#!/bin/bash

#Description:
#input:
#output:
#Author:huangtao

1.系统信息命令
whoami                              显示当前登录的用户
id                                  显示当前登录所属的用户和组id
last                                显示最后一次登录的用户
lastlog                             用户最后登录的时间
who /var/log/wtmp                   查看登陆过的历史信息
history                             显示用户在之前执行的bash命令历史记录,历史命令默认1000条
history -c                          清楚记录命令
cat \$HOME/.bash_history            查看历史记录命令文件
mount                               显示已挂在的驱动
echo "usr:passwd" | chpasswd        重置密码
strings /usr/sbin/pacemakerd        显示非文本文件的内容。例如一个二进制文件里有什么
dmsg                                显示开机信息
hwclock                             查看系统时间
date -s "20181102 14:07:00" &&hwclock --systohc         设置系统时间方法一
tzselect                                                通过内置命令修改，方法二


2.查看硬件信息
cat /etc/redhat-release             Linux查看版本当前操作系统发行版信息
uname -a                            Linux查看版本当前操作系统内核信息
uname -r                            查看内核版本1
cat /proc/version                   查看内核版本2
lsmod                               查看内核模块
more /proc/cpuinfo                  查看cpu信息
lscpu
getconf LONG_BIT                    查看cpu位数
cat /proc/cpuinfo | grep 'physical id' | sort | uniq -c 物理cpu个数
cat /proc/cpuinfo | grep flags      查看cpu是否支持虚拟化，pae支持半虚拟化，IntelVT支持全虚拟化
free -m                             查看内存信息,5种方式
vmstat -d
cat /proc/meminfo
top
htop
dmidecode                           查看全面硬件信息
dmidecode | grep "Product Name"     查看服务器型号
dmidecode | grep -P -A5 "Memory\s+Device" | grep Size | grep -v Range   查看内存插槽
lspci                               查看硬件信息
modinfo zfs                         查看驱动模块
ethtool -i ens32                    查看网卡驱动模块


3.YUM命令，基于 RPM 的系统使用了包管理器
yum update                              使用yum更新所有的rpm包，也会显示过时的一些包，也可以后面跟上某某包yum update httpd
yum --exclude=package kernel* update    使用yum，将某一个包排除在外不更新
yum remove package                  用yum删除包
yum erase package
yum list package                    列出包的信息
显示包的用途
yum provides package                显示包架构，版本等信息
yum info package
yum localinstall *.rpm              使用yum来安装本地rpm，从资源库进行安装
yum deplist package                 显示包的提供方信息
yum list installed | more           列出所有已安装的包
yum groupinstall 'Development Tools'安装yum分组
yum grouplist | more                显示所有的yum分组


4.rpm命令的使用
rpm -ivh package.rpm                安装
rpm -Uvh package.rpm                升级
rpm -e package.rpm                  卸载
rpm -e --nodeps package.rpm         如果遇到依赖，无法删除，使用 rpm -e --nodeps <包的名字> 不检查依赖，直接删除rpm包
rpm -e --allmatches --nodeps package.rpm    如果恰好有多个包叫同样的名字，使用 rpm -e --allmatches --nodeps <包的名字> 删除所有相同名字的包， 并忽略依赖
rpm -qa                             查询安装的包
rpm -qf /usr/sbin/pacemakerd        查询该文件是由什么包安装的


5.linux上解压缩，压缩命令
解压缩命令，在 Linux 上解析不同的压缩包 (tar, zip, gzip, bzip2 等等) 
unzip archive.zip                   提取zip中的文件
zipgrep *.txt archive.zip           在一个zip包中搜索
tar xf archive.tar                  提取tar包中的文件
tar xvzf archive.tar.gz             提取tar.gz中的文件
tar ztvf archive.tar.gz | grep httpd    在tar.gz文件中搜索
tar xjf archive.tar.bz2             提取tar.bz2中的文件
gzip -d archive.gz                  提取gzip中文件
zcat archive.gz                     以不解压缩的方式读取一个gz文件
zless archive.gz                    用较少的命令对gz压缩包相同的功能
zgrep '*.txt' archive.gz            对gz压缩包里的内容进行搜索
upx -9 -o output.exe input.exe      用UPX压缩.exe文件
压缩命令
zip output.zip /dir/*               创建一个zip文件
tar cf output.tar /dir/*            创建一个tar文件
tar czf output.tar.gz /dir/*        创建一个tar.gz文件
tar cjf output.tar.bz2 /dir/*       创建一个tar.bz2文件
gzip /dir/*                         创建一个gz文件



